package com.mt.repair.service.repairManagement;

import com.mt.common.core.web.base.PageDTO;
import com.mt.common.core.web.base.PageResultDTO;
import com.mt.repair.entity.repairManagement.DeviceCatUser;

import java.util.List;

public interface DeviceCatUserService {
    /**
     * 根据分页参数查询设备用户关联表集合
     *
     * @param pageDTO 分页条件
     */
    public PageResultDTO findDeviceCatUsers(PageDTO pageDTO);

    /**
     * 查询全部设备用户关联表集合
     *
     */
    public List<DeviceCatUser> findAllDeviceCatUsers();

    /**
     * 根据名称查询设备用户关联表集合(只提取ID 和 Name)
     *
     * @param deviceCatUserName 名称
     */
    public List<DeviceCatUser> findDeviceCatUsersWithIdNameByName(String deviceCatUserName);

    /**
     * 查询所有设备用户关联表集合(只提取ID 和 Name)
     *
     */
    public List<DeviceCatUser> findAllDeviceCatUsersWithIdName();

    /**
     * 根据ID查询指定的设备用户关联表(只提取ID 和 Name)
     *
     * @param deviceCatUserId Id
     */
    public DeviceCatUser findDeviceCatUsersWithIdNameById(Long deviceCatUserId);

    /**
     * 根据ID查询指定的设备用户关联表
     *
     * @param deviceCatUserId Id
     */
    public DeviceCatUser findDeviceCatUser(Long deviceCatUserId);

    /**
     * 根据ID查询指定的设备用户关联表(包含外键)
     *
     * @param deviceCatUserId Id
     */
    public DeviceCatUser findDeviceCatUserWithForeignName(Long deviceCatUserId);

    /**
     * 新增设备用户关联表
     *
     * @param deviceCatUser 实体对象
     */
    public DeviceCatUser saveDeviceCatUser(DeviceCatUser deviceCatUser);

    /**
     * 更新设备用户关联表
     *
     * @param deviceCatUser 实体对象
     */
    public DeviceCatUser updateDeviceCatUser(DeviceCatUser deviceCatUser);

    /**
     * 根据ID删除设备用户关联表
     *
     * @param deviceCatUserId ID
     */
    public void deleteDeviceCatUser(Long deviceCatUserId);
}
